Chức năng GNU_C_Library

glibc cung cấp chức năng được yêu cầu bởi Single UNIX Specification, POSIX (1c, 1d, và 1j) và một số chức năng được yêu cầu bởi các giao diện ISO C11, ISO C99, Berkeley Unix (BSD), System V Interface Definition (SVID) và X/Open Portability Guide (XPG), Issue 4.2, với tất cả các phần mở rộng chung cho các hệ thống tuân thủ XSI (X/Open System Interface) cùng với tất cả các phần mở rộng X/Open UNIX.

Ngoài ra, glibc còn cung cấp các phần mở rộng đã được cho là hữu ích hoặc cần thiết trong khi phát triển GNU.

Phần cứng và nhân được hỗ trợ

glibc được sử dụng trên nhiều kiến trúc phần cứnghạt nhân khác nhau. Nó được sử dụng phổ biến nhất trên các hệ thống sử dụng Linux kernel trên phần cứng x86, tuy nhiên, các phần cứng được hỗ trợ chính thức[36] bao gồm: ARM 32-bit và 64-bit (AArch64), C-SKY, DEC Alpha, IA-64, Motorola m68k, MicroBlaze, MIPS, Nios II, PA-RISC, PowerPC, RISC-V, s390, SPARC, và x86 (câc bản cũ hỗ trợ TILE). Nó chính thức hỗ trợ hạt nhân Hurd và Linux. Ngoài ra, có các phiên bản được heavily patched chạy trên hạt nhân của FreeBSD và NetBSD (từ đó các hệ thống Debian GNU/kFreeBSD và Debian GNU/NetBSD được xây dựng tương ứng), cũng như phiên bản phân nhánh của OpenSolaris.[37] Nó cũng được sử dụng (ở dạng đã chỉnh sửa) và được đặt tên là libroot.so trên BeOSHaiku.[38]

Dùng trên các thiết bị nhỏ

glibc đã bị chỉ trích là "cồng kềnh" và chậm hơn các thư viện khác trong quá khứ, ví dụ Linus Torvalds[39] và các nhà phát triển embedded Linux. Vì lý do này, một số thư viện chuẩn C thay thế đã được tạo ra để which nhấn mạnh một dấu chân nhỏ hơn. Tuy nhiên, nhiều dự án thiết bị nhỏ sử dụng GNU libc thay vì các lựa chọn thay thế nhỏ hơn vì hỗ trợ ứng dụng, tuân thủ các tiêu chuẩn và tính hoàn chỉnh của nó. Các ví dụ bao gồm Openmoko[40] và Familiar Linux cho các thiết bị cầm tay iPaq (khi sử dụng phần mềm hiển thị GPE).[41]

Tài liệu tham khảo

WikiPedia: GNU_C_Library http://linuxmafia.com/faq/Licensing_and_Law/forkin... http://linuxmafia.com/faq/Licensing_and_Law/forkin... http://wiki.openmoko.org/wiki/OpenMoko http://ecos.sourceware.org/ml/libc-alpha/2002-01/m... https://csclub.uwaterloo.ca/~dtbartle/opensolaris/ https://github.com/haiku/haiku/tree/master/src/sys... https://www.linkedin.com/in/ulrichdrepper https://www.linux.com/archive/feature/3874 https://udrepper.livejournal.com/7326.html https://access.redhat.com/documentation/en-us/red_...